package org.example.psn.core.entity;

import com.baomidou.mybatisplus.annotation.TableField;
import com.fasterxml.jackson.databind.annotation.JsonSerialize;
import com.fasterxml.jackson.databind.ser.std.ToStringSerializer;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.experimental.Accessors;
import org.example.system.common.bean.BaseEntity;

import java.time.LocalDateTime;

/**
 * <p>
 * 用户信息
 * </p>
 *
 * @author Joey
 * @since 2021-05-11
 */
@Data
@EqualsAndHashCode(callSuper = true)
@Accessors(chain = true)
@ApiModel(value="Person对象", description="用户信息")
public class Person extends BaseEntity {

    private static final long serialVersionUID=1L;

    @ApiModelProperty(value = "名称")
    @TableField("psnName")
    private String psnName;

    @ApiModelProperty(value = "用户编号")
    @TableField("psnNum")
    private String psnNum;

    @JsonSerialize(using= ToStringSerializer.class)
    @ApiModelProperty(value = "主部门id")
    @TableField("mainGroupId")
    private Long mainGroupId;

    @ApiModelProperty(value = "电话")
    private String telephone;

    @ApiModelProperty(value = "邮件")
    @TableField("eMail")
    private String eMail;

    @ApiModelProperty(value = "地址")
    private String address;

    @ApiModelProperty(value = "生日")
    private LocalDateTime birthday;

    @JsonSerialize(using= ToStringSerializer.class)
    @ApiModelProperty(value = "头像地址")
    private Long avatar;

    @ApiModelProperty(value = "性别0=未知1=男2=女")
    private Integer gender;

    @ApiModelProperty(value = "介绍")
    private String introduction;

    @ApiModelProperty(value = "状态0=禁用1=启用")
    @TableField("statusId")
    private Integer statusId;



}
